/*
 *  Guacamole - Clientless Remote Desktop
 *  Copyright (C) 2010  Michael Jumper
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU Affero General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU Affero General Public License for more details.
 *
 *  You should have received a copy of the GNU Affero General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

.keyboard-container {
    text-align: center;
    position: fixed;
    left: 25%;
    bottom: 0;
    width: 50%;
    margin: 0;
    padding: 0;

    border-top: 1px solid black;
    background: #222;
    opacity: 0.85;

    z-index: 1;
}

.guac-keyboard {
    display: inline-block;
    width: 100%;

    margin: 0;
    padding: 0;
    cursor: default;

    text-align: left;
    vertical-align: middle;
}

.guac-keyboard .guac-keyboard-key-container {
    display: inline-block;
}

.guac-keyboard .guac-keyboard-key {
    background: #444;
    border: 1px outset #888;
    -moz-border-radius: 0.1em;
    -webkit-border-radius: 0.1em;
    -khtml-border-radius: 0.1em;
    border-radius: 0.1em;
}

.guac-keyboard .guac-keyboard-cap {
    color: white;
    font-family: sans-serif;
    font-size: 50%;
    font-weight: lighter;
    text-align: center;
    white-space: pre;
}

.guac-keyboard .guac-keyboard-key:hover {
    cursor: pointer;
}

.guac-keyboard .guac-keyboard-key.highlight {
    background: #666;
    border-color: #666;
}

.guac-keyboard.guac-keyboard-modifier-shift .guac-keyboard-key.shift,
.guac-keyboard.guac-keyboard-modifier-numsym .guac-keyboard-key.numsym {
    background: #882;
    border-color: #DD4;
}

.guac-keyboard.guac-keyboard-modifier-control .guac-keyboard-key.control,
.guac-keyboard.guac-keyboard-modifier-numsym .guac-keyboard-key.numsym {
    background: #882;
    border-color: #DD4;
}

.guac-keyboard.guac-keyboard-modifier-alt .guac-keyboard-key.alt,
.guac-keyboard.guac-keyboard-modifier-numsym .guac-keyboard-key.numsym {
    background: #882;
    border-color: #DD4;
}

.guac-keyboard.guac-keyboard-modifier-super .guac-keyboard-key.super,
.guac-keyboard.guac-keyboard-modifier-numsym .guac-keyboard-key.numsym {
    background: #882;
    border-color: #DD4;
}

.guac-keyboard .guac-keyboard-key.guac-keyboard-pressed {
    background: #822;
    border-color: #D44;
    border-style: inset;
}

.guac-keyboard .guac-keyboard-row {
    line-height: 0;
}

.guac-keyboard .guac-keyboard-column {
    display: inline-block;
    text-align: center;
    vertical-align: top;
}

.guac-keyboard .guac-keyboard-gap {
    display: inline-block;
}

/* Hide keycaps requiring modifiers which are NOT currently active. */
.guac-keyboard:not(.guac-keyboard-modifier-caps)
.guac-keyboard-cap.guac-keyboard-requires-caps,

.guac-keyboard:not(.guac-keyboard-modifier-numsym)
.guac-keyboard-cap.guac-keyboard-requires-numsym,

.guac-keyboard:not(.guac-keyboard-modifier-shift)
.guac-keyboard-cap.guac-keyboard-requires-shift,

/* Hide keycaps NOT requiring modifiers which ARE currently active, where that
   modifier is used to determine which cap is displayed for the current key. */
.guac-keyboard.guac-keyboard-modifier-shift
.guac-keyboard-key.guac-keyboard-uses-shift
.guac-keyboard-cap:not(.guac-keyboard-requires-shift),

.guac-keyboard.guac-keyboard-modifier-numsym
.guac-keyboard-key.guac-keyboard-uses-numsym
.guac-keyboard-cap:not(.guac-keyboard-requires-numsym),

.guac-keyboard.guac-keyboard-modifier-caps
.guac-keyboard-key.guac-keyboard-uses-caps
.guac-keyboard-cap:not(.guac-keyboard-requires-caps) {

    display: none;

}